package com.huqingshan.LenMore.model.entity;



import com.huqingshan.LenMore.model.enums.PRODUCTSTATUS;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import com.huqingshan.LenMore.utils.travel.DateUtils;


import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @author 卫鹏
 * @Description 产品表 实体类
 * @createTime 2022年3月25日20:32:04
 */

@Data
public class Product implements Serializable {
    private String id;                  //主键
    private String productNum;          //产品编号
    private String productName;         //产品名称
    private String cityName;            //出发城市
    //格式化时间类的格式：
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    private Date DepartureTime;         //出发时间
    private String DepartureTimeStr;    //格式化后的出发时间
    private BigDecimal productPrice;    //产品价格
    private String productDesc;         //产品描述

    private PRODUCTSTATUS productStatus;      //状态（0 关闭 1 开启）
    private String productStatusStr;    //格式化后的状态


    /**
     * 将日期 转换成字符串
     */
    public String getDepartureTimeStr() {
        //判断DepartureTime是否为null:
        if (DepartureTime != null) {
            //使用工具模块的DateUtils:     传入Date日期，日期格式化的String类型
            DepartureTimeStr = DateUtils.dateToString(DepartureTime, "yyyy年MM月dd日 hh时mm分ss秒");
        }
        return DepartureTimeStr;
    }


    /**
     * 状态（0 关闭 1 开启）
     */
    public String getProductStatusStr() {
        //判断productStatus是否有值：
        if (productStatus != null) {
            productStatusStr = productStatus.getStatusDescription();
        }
        return productStatusStr;
    }

    @Override
    public String toString() {
        return "Product{" +
                "id='" + id + '\'' +
                ", productNum='" + productNum + '\'' +
                ", productName='" + productName + '\'' +
                ", cityName='" + cityName + '\'' +
                ", DepartureTime=" + DepartureTime +
                ", DepartureTimeStr='" + DepartureTimeStr + '\'' +
                ", productPrice=" + productPrice +
                ", productDesc='" + productDesc + '\'' +
                ", productStatus=" + productStatus +
                ", productStatusStr='" + productStatusStr + '\'' +
                '}';
    }


}